Apparatus and method for allocating channel time to applications in wireless PAN

ABSTRACT

An apparatus and method for allocating channel time for each application in a single superframe when applications such as wireless USB and IEEE 802.2, which are implemented in a MAC layer, coexist on a wireless PAN. The apparatus includes a beacon generating module for generating a superframe; a duration adjusting module for adjusting a duration of the superframe to be a multiple of a frame of an upper application layer of a device; a channel time dividing module for comparing an allowable size of maximum CTA in the frame of the upper application layer of the device with a size of isochronous CTA of another device and dividing the CTA, if necessary; and a channel time relocating module for comparing a super-rate of CTA previously located in the superframe with a super-rate of CTA to be newly added and relocating the newly added CTA.

This application claims the priority of Korean Patent Application No.10-2003-0035777 filed on Jun. 3, 2003, with the Korean IntellectualProperty Office, and U.S. Provisional Patent Application No. 60/488,444filed on Jul. 21, 2003, with the United States Patent and TrademarkOffice, the disclosures of which are incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. Field of the Invention

Apparatuses and methods consistent with the present invention relate toallocating channel time for communication between wireless devices in awireless PAN (Personal Area Network). More particularly, the presentinvention relates to an apparatus and method for allocating channel timefor each application in a single superframe when applications such aswireless USB and IEEE 802.2, which are implemented in a MAC layer,coexist on a wireless PAN.

2. Description of the Related Art

Due to the progress of digital technology, many digital products such asDVD players, cable STBs (SetTop Boxes), DVCRs (Digital Video CassetteRecorders), DTVs (Digital TVs) and PCs (Personal Computers) areinterconnected on a single network. Various protocols can be implementedin such equipment in order to transmit or receive AV data to or fromother equipment. When these various protocols are to be transmitted in awireless PAN (Personal Area Network), a method of sharing a wirelessmedium is required.

FIG. 1 is a diagram showing the channel time allocation structure of asuperframe that a related art piconet coordinator (PNC) generates.Referring to FIG. 1, the channel time allocation (CTA) structure isdivided into two layers. An upper layer shows the time-based structureof continuous frames of an upper application layer, and a lower layershows the time-based structure of a superframe of a MAC layer forwireless communication. It is noted that “application” as used in thespecification refers to interfaces or standards and “application layer”as used in the specification does not refer to the application layer inthe Open Systems Interconnect (OSI) Model. The upper application layeris configured such that data are directly transmitted from the upperapplication layer without the MAC layer in existing wired communication.In the case of wireless communication, the data are transmitted from theupper application layer through the lower MAC layer and the receiveddata are transferred back to the upper application layer through thelower MAC layer. That is, the structure shown in FIG. 1 can be obtainedby combining an upper application layer used in existing wiredcommunication with a MAC layer required in wireless communication.

According to such a structure, isochronous transaction should betransmitted every frame for applications having a very short frameperiod, e.g., a wireless USB device. Further, if a large CTA (CTA #6) isallocated from another device, data cannot be transmitted during thisperiod. Thus, the data in this period should be buffered. Furthermore,since the size of the buffer-generating CTA is not determined, it isimpossible to know how much buffer is needed for a device. In addition,if the superframe duration is not coincident with a multiple of theframe size, this also acts as a factor hindering periodic transmission.In an example of FIG. 1, since the frame #9 is a broken frame, it cannotnormally transmit data related thereto.

SUMMARY OF THE INVENTION

Accordingly, the present invention is conceived to solve the aboveproblems in the related art. An aspect of the present invention is toprovide a method for allocating channel time for each application in asingle superframe when an application for wireless USB implemented in aMAC layer, an application of IEEE LAN protocol 802.2 specifying animplementation type of a Logical Link Control Sub Layer (LLC sub layer)of a Data-Link Layer, and the like coexist on a wireless PAN.

Further, another aspect of the present invention is to provide a methodfor efficiently allocating channel time in a superframe in considerationof the relationship between a transaction frame supplied from theapplications and a superframe of a MAC layer.

According to an aspect of the present invention for achieving theaspects, there is provided an apparatus for allocating channel time toan application on a wireless personal area network (PAN), comprising abeacon generating module for generating a superframe within a beaconperiod; a duration adjusting module for adjusting duration of thesuperframe so that the duration becomes a multiple of duration of aframe of an upper application layer of a device; a channel time dividingmodule for comparing an allowable size of maximum CTA in the frame ofthe upper application layer of the device with a size of isochronous CTAof another device and dividing the CTA, if necessary; and a channel timerelocating module for comparing a super-rate of CTA previously locatedin the superframe with a super-rate of CTA to be newly added andrelocating the newly added CTA.

According to another aspect of the present invention, there is provideda method for allocating channel time to an application on a wirelessPAN, comprising the steps of (1) adjusting duration of a superframe tobe a multiple of duration of a frame; (2) comparing a size of maximumCTA with a size of an isochronous CTA of a requesting device toefficiently locate the CTA in the adjusted superframe; and (3) if it isdetermined that the size of the isochronous CTA of the requesting deviceis greater than an allowable size of the maximum CTA in the frame of theupper application layer, dividing the isochronous CTA by a valueobtained by adding 1 to a quotient of the size of the isochronous CTAdivided by the size of the maximum CTA.

BRIEF DESCRIPTION OF THE DRAWINGS

The above and other aspects, features and other advantages of thepresent invention will become apparent from the following description ofan exemplary embodiment given in conjunction with the accompanyingdrawings, in which:

FIG. 1 is a diagram showing the CTA allocation structure of a superframethat a related art piconet coordinator (PNC) generates;

FIG. 2 a is a diagram showing the CTA allocation structure of asuperframe generated by a PNC according to the present invention;

FIG. 2 b is a diagram showing the structure of a unit frame that adevice application generates.

FIG. 3 is a module diagram of an apparatus for generating a newsuperframe to implement the present invention; and

FIG. 4 is a flowchart specifically illustrating a method forimplementing the present invention.

DETAILED DESCRIPTION OF THE INVENTION

Hereinafter, an exemplary embodiment of the present invention will bedescribed in detail with reference to the accompanying drawings.

FIG. 2A is a diagram showing a channel time allocation (CTA) structureof a superframe generated by a piconet coordinator (PNC) according tothe present invention. Referring to this figure, the upper layer shows astructure of a frame 210 of a layer in which an application for wirelessUSB or IEEE 802.2 exists and the lower layer shows a structure of asuperframe 220 existing in a level of a MAC layer, in the form of atime-based structure. In this exemplary embodiment, it is assumed thatthe applications for wireless USB and IEEE 802.2 coexist. In a frame forwireless USB, an isochronous channel and interrupt channel are generatedperiodically and an asynchronous channel also exists. In the exemplaryembodiment, the duration of a superframe is set to 10 ms and theduration of a frame is set to 1 ms. As a result, ten frames exist withinone superframe. The superframe begins from a beacon 229 where serialnumbers are numbered in the order of beacons. A beacon period is set tobegin at RES of the upper application layer (non-periodic save area; 292of FIG. 2B), and a start of the CTA #1 221 is set to be coincident witha start of the frame #0 210.

In the superframe 220, serial numbers such as #1 and #2 numbered in theCTA represent Stream Indexes that are used to determine the equality ofdata. Thus, the same Stream Index represents a stream of the same data,and different Stream Index represents a stream of different data.

A start of frame 212 shown in this figure is a portion for indicating astart of frame for each frame 210.

For isochronous transaction, isochronous CTA is allocated to thewireless USB device from the PNC by the number of frames of an upperapplication existing in a period of one superframe. In this example, aportion of ISO #1 of the upper layer shows CTA #1 221 in the lowersuperframe, of which the super-rate value is 10.

In the case of an interrupt transaction, the interval of the frame wherethe interrupt transaction should exist is calculated and allocated fromthe PNC. In this example, since the interrupt transaction should existevery five frames, two isochronous channel times are allocated from thePNC. INT (which means the interrupt transaction) of the upper layer isshown as an isochronous CTA in the lower layer. However, the INT isshown in every periodic frame interval in the frame, whereas it is showntwice per superframe. This is because the INT is not the interrupttransaction but the isochronous CTA of which the super-rate value is 2.

In the meantime, when a source ID of the allocated CTA is not a deviceID of its own, it is processed such that scheduling is virtuallygenerated in the frame. For example, a device for executing the 802.2application other than the wireless USB device is allocated channel timeby the PNC. That is, a portion of the frame is allocated in view of thewireless USB device, but a real transaction does not occur. Thus, such aportion is shown as a Virtual Traffic period 214.

Asynchronous transaction 211 of the upper layer occupies an emptyportion in one frame (a portion outside of the isochronous transactionportion), and asynchronous CTA 227 of the lower layer occupies an emptyportion in one entire superframe.

Further, reference numerals 233, 234, 235, 236 and 237 represent CTA ofanother device, contrary to the other CTA. Among them, CTA #6 236 isoriginally requested as a single CTA but is divided into two CTAs inorder to avoid the problems described in connection with FIG. 1.

FIG. 2B is a diagram showing the structure of a unit frame generated bya device application. In a case where the duration of a frame 290 of theapplication is 1 ms as illustrated in FIG. 2A, if a data transfer rateof 20 Mbps is required in a device having a physical layer of 100 Mbps,an ISO (Isochronous) slot 291 for performing such data transmissionshould be 0.2 ms. Each frame of the application has a maximum ratio ofperiodic transaction limited for non-periodic or asynchronoustransaction. Accordingly, when the device is allocated isochronouschannel time by the PNC, it must ensure that the channel time does notexceed this maximum ratio. Further, the PNC should not allocateisochronous CTA to the frame. As shown in this figure, the sum of theISO slots does not exceed a maximum interval 293 of a periodictransaction. The other portion, which is not occupied by the ISO slots,remains a RES 292 (non-periodic save area), so that asynchronoustransactions can be available in an interval corresponding to the RES.

In FIG. 2B, isochronous and interrupt transactions belong to a periodictransaction, whereas bulk and control transactions belong to anon-periodic (asynchronous) transaction. First, the isochronoustransaction is a periodic transaction and corresponds to continuouscommunication made between a host and a device. Such a mode is generallyneeded for a case (e.g., video stream, etc.) where data transmissionshould be made at the almost same speed as that of an original datastream. Second, the interrupt transaction corresponds to a transactionthat is periodic but does not appear every frame but rather at aconstant frame interval. Third, the control transaction is bursty andnon-periodic, and uses a request/response communication initiated by thehost software. Finally, the bulk transaction is a non-periodic datatransmission that uses all available bandwidths when they are availableand is delayed until the bandwidths become available if they are nototherwise available immediately.

FIG. 3 is a module diagram showing an apparatus 300 for allocatingchannel time according to the present invention. The apparatus 300 canbe operated in a state where it is embedded in a PNC. The apparatus 300comprises a beacon generating module 310, a duration adjusting module320, a channel time dividing module 330, and a channel time relocatingmodule 340.

The beacon generating module 310 generates and transmits a superframe,which has been proposed in the present invention, within a beaconperiod. A detailed description on the superframe was made in connectionwith FIGS. 2A and 2B, and thus, it will be omitted herein.

The duration adjusting module 320 adjusts the duration of the superframeso that the duration becomes approximately equal to an integral multipleof the duration of a frame of an upper application layer of a device.That is, the duration of the superframe is divided by the duration ofthe frame of the upper application layer. Then, if the superframeduration is not approximately equal to an integral multiple of the frameduration, the adjusting module 320 requests that the PNC adjust theduration of the superframe. Accordingly, the PNC adjusts the superframeduration and then feeds back the adjusted duration value as a response.In FIG. 2A, the duration of the superframe is set to 10 ms and theduration of the frame is set to 1 ms. As a result, ten frames exist inone superframe.

As described above, if the duration of the superframe is not set to beapproximately equal an integral multiple of the duration of the frame,it may function as a factor hindering periodic transmission. That is, abroken frame may be generated in a portion where the end point of asuperframe is not coincident with the end point of any one of theframes, and thus, data corresponding to the broken frame cannot beproperly transmitted.

The channel time dividing module 330 compares the allowable size of themaximum CTA in the frame of the upper application layer of the devicewith the size of the isochronous CTA of another device and divides theCTA, if necessary. More specifically, the channel time dividing module330 determines whether the CTA that the device requested from the PNC isisochronous or asynchronous. Then, if it is isochronous, the modulecompares the requested CTA with totally available CTA to determinewhether the requested CTA is available. If it is determined that therequested CTA is not available, the module sends a response “notavailable bandwidth” to the requesting device. Otherwise, the modulecompares the size of the requested CTA with the size of the maximum CTA(for example, the size of a single ISO shown in FIG. 2B), i.e., the CTAfor the maximum data that can be isochronously transmitted in each framefor AV transmission such as wireless USB or wireless 1394. If a value ofthe requested CTA is greater than that of the maximum CTA, the requestedCTA is divided by a value obtained by adding 1 (one) to the quotient ofthe size of the requested CTA divided by the size of the maximum CTA andchanged into super-rated CTAs equal in number to the divided CTAs.

The channel time relocating module 340 compares the super-rate of acurrent CTA, and then either relocates the current CTA if the super-rateof the current CTA is greater than that of an existing CTA or relocatesthe current CTA by merely appending it to the existing CTA if thesuper-rate of the current CTA is less than that of the existing CTA.

FIG. 4 is a flowchart specifically illustrating a method forimplementing the present invention.

First, based on information on the superframe duration generated fromthe PNC, the duration of a superframe in the MAC layer is divided by theduration of frame of the upper application layer. At this time, thesuperframe duration should be set to be approximately equal to anintegral multiple of the frame duration. If the superframe duration isnot approximately equal to an integral multiple of the frame duration, arequest is sent to the PNC to adjust the superframe duration.Accordingly, the PNC adjusts the superframe duration (S401) and therequested value is returned as a response (S402).

At this time, the PNC determines whether the requested CTA isisochronous or asynchronous (S403). If the requested CTA is isochronous,it is compared with the totally available CTA to determine whether it isavailable (S404 and S405). If it is determined that the requested CTA isnot available, a response “not available bandwidth” is sent to therequesting device (S440). Otherwise, the size of the requested CTA iscompared with the size of the maximum CTA (for example, the size of asingle ISO shown in FIG. 2 b), i.e. the CTA for the maximum data thatcan be isochronously transmitted in each frame for the AV transmissionsuch as wireless USB or wireless 1394 (S406). If the requested CTA isgreater than the maximum CTA, the number of times the requested CTA isgreater than the maximum CTA is calculated and the requested CTA ischanged into a number of isochronous super-rate CTAs. In other words,the size of the isochronous CTA is divided by the value obtained byadding 1 (one) to the quotient of the size of the requested CTA dividedby the size of the maximum CTA (S410) as a resulting value. Then, therequested CTA is changed into super-rate CTAs equal in number to theresulting value (S411). If the requested CTA is less than the maximumCTA, the corresponding isochronous CTA is allocated thereto.

In the case of super-rate allocation, CTA is allocated with a higherpriority as its super-rate becomes higher. That is, the super-rate valueof a superframe of the CTA is compared (S407), and it is required thatthe CTA with a higher super-rate be first located and the CTA with alower super-rate follow. In the case of wireless USB, the interrupttransaction is always executed after the isochronous transaction hasbeen executed. To this end, the CTA for isochronous transaction shouldbe first located as compared with the CTA for interrupt transaction.Thus, if the super-rate of the current CTA is greater than that of theexisting CTA, the current CTA should be relocated ahead of the existingCTA (S409). If the super-rate of the current CTA is less than that ofthe existing CTA, the current CTA is relocated by merely appending it tothe existing CTA (S408).

In the case of the asynchronous CTA request, it is determined whether anavailable CTA area exists in the superframe. If it is determined that anavailable area exists, the asynchronous channel time is allocated to thearea (S423), and the requested CTA value is then decreased by theallocated channel time (S424). Further, the allocation is repeated untilall the requested CTAs have been allocated (S425). If it is determinedthat the available area does not exist, the next superframe is awaitedand the same operation will be performed (S430).

As described above, according to the present invention, since a methodfor efficiently allocating channel time is proposed when applicationsfor wireless USB and 802.2 coexist on a wireless PAN, maximumisochronous characteristics can be ensured when the applications executetransactions. Therefore, there is an advantage in that AV streams, etc.,can be stably transmitted.

Although the exemplary embodiment of the present invention has beendisclosed for illustrative purpose, the present invention is not limitedthereto. It is apparent to those skilled in the art that various changesand modifications can be made without departing from the scope andspirit of the invention as defined in the appended claims.

1. An apparatus for allocating channel time to an application on awireless personal area network (PAN), comprising: a duration adjustingmodule for adjusting a first duration of a superframe so that the firstduration becomes substantially equivalent to a multiple of a secondduration of a frame of an upper layer of a device; a channel timedividing module for comparing an allowable size of a maximum channeltime allocation (CTA) in the frame of the upper layer of the device witha size of an isochronous CTA of another device and dividing theisochronous CTA into a plurality of CTAs, according to the size of theisochronous CTA of the other device; and a channel time relocatingmodule for comparing a second super-rate of a second CTA previouslylocated in the superframe with a first super-rate of a first CTA, of theplurality of the CTAs, to be newly added and relocating the first CTA.2. The apparatus as claimed in claim 1, wherein if the size of theisochronous CTA of the other device is greater than the allowable sizeof the maximum CTA in the frame of the upper layer of the device, thechannel time dividing module is configured to divide and relocate theisochronous CTA by a value obtained by adding 1 (one) to a quotient ofthe isochronous CTA divided by the allowable size of the maximum CTA inthe frame of the upper layer of the device.
 3. The apparatus as claimedin claim 1, wherein after the second super-rate of the second CTApreviously located in the superframe is compared with the firstsuper-rate of the first CTA to be newly added, the channel timerelocating module is configured to relocate one of the first CTA andsecond CTA with a higher super-rate ahead of another of the first CTAand second CTA with a lower super-rate.
 4. The apparatus as claimed inclaim 1, wherein a beacon for indicating a start of the superframe to begenerated within a beacon period is generated in a non-periodic savearea of the frame.
 5. The apparatus as claimed in claim 1, wherein athird CTA not allocated to the device due to the isochronous CTA of theother device, is recognized to be virtually occupied in the frame, andtransactions of the device are not generated from the third CTA.
 6. Theapparatus as claimed in claim 1, wherein a variety of types of CTA areuniformly distributed in the superframe.
 7. The apparatus as claimed inclaim 1 further comprising a beacon generating module for generating thesuperframe within a beacon period.
 8. The apparatus as claimed in claim1, wherein the multiple is an integer multiple.
 9. The apparatus asclaimed in claim 1, wherein if the size of the isochronous CTA of theother device is not greater than the allowable size of the maximum CTAin the frame of the upper layer of the device, the channel time dividingmodule is configured not to divide the isochronous CTA, and the channeltime relocating module is configured to compare the second super-rate ofthe second CTA with a first super-rate of the isochronous CTA to disposethe isochronous CTA in the superframe.
 10. A method for allocatingchannel time to an application on a wireless personal area network(PAN), comprising: adjusting a first duration of a superframe to besubstantially equivalent to a multiple of a second duration of a frameto output an adjusted superframe; comparing a size of a maximum channeltime allocation (CTA) in a frame of an upper layer with a size of anisochronous CTA of a requesting device to efficiently locate theisochronous CTA in the adjusted superframe; and if it is determined thatthe size of the isochronous CTA of the requesting device is greater thanan allowable size of the maximum CTA in the frame of the upper layer,dividing the isochronous CTA by a value obtained by adding 1 to aquotient of the size of the isochronous CTA divided by the size of themaximum CTA.
 11. The method as claimed in claim 10, further comprising:comparing a second super-rate of existing CTA previously located in thesuperframe with a first super-rate of first CTA to be newly added; andlocating the first CTA ahead of the existing CTA when it is determinedthat the first super-rate of the first CTA is greater than the secondsuper-rate of the existing CTA, or appending the first CTA to theexisting CTA when the first super-rate of the first CTA is less than thesecond super-rate of the existing CTA.
 12. The method as claimed inclaim 10, further comprising, between the adjusting the first durationof the superframe and the comparing the size of the maximum CTA:comparing a size of total available isochronous CTA with a size of arequested CTA requested by the device when the requested CTA isisochronous; and sending a response to the requesting device andterminating channel allocation when it is determined that the requestedCTA is greater than the total available isochronous CTA, or comparingthe size of the maximum CTA when the requested CTA is less than thetotal available isochronous CTA.
 13. The method as claimed in claim 10,further comprising, between the adjusting the first duration of thesuperframe and the comparing the size of the maximum CTA: determining,when a requested CTA requested by a device is asynchronous, whetheravailable CTA exists in the adjusted superframe and then allocating theavailable CTA, as an allocated CTA, if the available CTA exists;decreasing the requested CTA by a value of the allocated CTA; andrepeating the determining and the decreasing when the requested CTAremains, or sending a response to the requesting device when therequested CTA does not remain.
 14. The method as claimed in claim 10,further comprising, between the adjusting the first duration of thesuperframe and the comparing the size of the maximum CTA: when a CTArequested by a device is asynchronous, determining whether an availableCTA exists in the adjusted superframe and then waiting for a nextsuperframe if the available CTA does not exist.
 15. The method asclaimed in claim 10, wherein the multiple is an integer multiple.
 16. Amethod for allocating channel time to an application on a wirelesspersonal area network (PAN) wherein an upper layer has frames and alower layer has superframes existing at a media access control (MAC)layer, the method comprising: adjusting a first duration of a superframeof the superframes, to be substantially equivalent to an integralmultiple of a second duration of a frame of the frames; outputting anadjusted superframe, comparing a size of a maximum channel timeallocation (CTA) in a frame of the upper layer with a size of anisochronous CTA of a requesting device; and dividing the isochronous CTAby a value obtained by adding 1 to a quotient of the size of theisochronous CTA divided by the size of the maximum CTA, if it isdetermined that the size of the isochronous CTA of the requesting deviceis greater than the maximum CTA in the frame of the upper layer.
 17. Amethod for allocating channel time to an application on a wirelesspersonal area network (PAN) wherein an upper layer has frames and alower layer has superframes existing at a media access control (MAC)layer, the method comprising: comparing a size of a maximum channel timeallocation (CTA) in a frame of the upper layer with a size of anisochronous CTA of a requesting device; and dividing the isochronous CTAby a value obtained by adding 1 to a quotient of the size of theisochronous CTA divided by the size of the maximum CTA, if it isdetermined that the size of the isochronous CTA of the requesting deviceis greater than the maximum CTA in the frame of the upper layer.